Global transactions are those transactions that span multiple resources (e.g. a bank account transfer activity involving debiting one database and crediting another within a transaction) in which those resources may be physically very far apart. In order to coordinate various resources that are participants in a transaction, a transaction manager is required. Such a transaction manager uses a two-phase commit protocol to coordinate the transaction completion where all of the resources reach consensus and are locked during a first (‘prepare’) phase, and then committed (or rolledback as necessary) during a second (‘commit’) phase.
Within a database, transactions provide what is referred to as ACID properties (atomicity, consistency, isolation, and durability). During a two-phase commit, should a system failure such as a network communication or power outage occur, a recovery manager is responsible for driving the completion of a transaction to an atomic state. Although some systems may allow for basic reporting of such recovery transactions, there is no existing administrative mechanism that allows for analysis and administration of the global transaction participant level, or at an application program interface (API) level.
However, this is often the exact type of administration necessary in such failure situations. If this functionality does not exist, it is necessary for a problem solver to search database logs and/or contact database administrator in order to understand the exact nature of the failure. Such problem solving is time-consuming plus makes the failure analysis subject to error. Consequently, a centralized mechanism for analysis and administration and recovery of transactions is desired.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.